package com.hopu.controller;

import com.github.pagehelper.PageInfo;
import com.hopu.entity.MyRole;
import com.hopu.service.MyRole.MyRoleService;
import com.hopu.util.HouseResult;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import javax.annotation.Resource;
import java.util.List;

/**
 * @Package: com.hopu.controller
 * @ClassName: MyRoleController
 * @Author: xiaoBao
 * @CreateTime: 2020/10/26 3:16
 * @Description:【岗位信息（角色信息）功能表现层】
 */
@Controller("myRoleController") /**定义控制层*/
public class MyRoleController {
    @Resource(name = "myRoleServiceImple")   /**引入MyRoleService服务层*/
    private MyRoleService myRoleService;


    /**
     * findAllRoleInfo 【查询所有角色信息显示到岗位信息列表】
     * @param current 当前页
     * @return 将分页后的角色信息返回给Ajax。
     */
    @RequestMapping("myjs/findAllJs.do")
    @ResponseBody
    public HouseResult<PageInfo<MyRole>> findAllRoleInfo(Integer current){
        return myRoleService.findAllRoleInfo(current);
    }


    /**
     * findRole 【查询用户名称是否存在（或根据Id查询一条岗位信息，实现修改弹窗的数据回显）】
     * @param myRole 用户名称；
     * @return 将查询结果返回给前台。
     */
    @RequestMapping("myjs/findRole.do")
    @ResponseBody
    public HouseResult<MyRole> findRole(MyRole myRole){
        return myRoleService.findRole(myRole);
    }


    /**
     * addRole 【添加一条岗位信息（角色名称）】
     * @param myRole 角色名称；
     * @return 将执行结果返回给前台。
     */
    @RequestMapping("myjs/addRole.do")
    @ResponseBody
    public HouseResult<Object> addRole(MyRole myRole){
        return myRoleService.addRole(myRole);
    }


    /**
     * updateRole 【根据Id修改一条岗位信息（角色名称）】
     * @param myRole 角色名称、Id
     * @return 将执行结果返回给前台。
     */
    @RequestMapping("myjs/updateRole.do")
    @ResponseBody
    public HouseResult<Object> updateRole(MyRole myRole){
        return myRoleService.updateRole(myRole);
    }


    /**
     * findAllRoleJidAndJname 【查询所有角色Id和名称（用于实现添加员工时在下拉框中回显所有角色信息）】
     * @return 将查询到的角色信息返回给Ajax。
     */
    @RequestMapping("myjs/findAllRoleJidAndJname.do")
    @ResponseBody
    public HouseResult<List<MyRole>> findAllRoleJidAndJname(){
        return myRoleService.findAllRoleJidAndJname();
    }

}
